package org.rslai.tcedit.business;

import java.io.IOException;

import javax.activation.DataHandler;

import org.rslai.tcedit.web.service.RunConf;
import org.rslai.tcedit.web.service.TestCaseInfo;
import org.rslai.tcedit.web.service.TestScriptInfo;

/**
 * 测试脚本 业务逻辑接口
 * @author rslai
 */
public interface TestScriptService {

	/**
	 * 上传脚本<br>
	 * 脚本以二进制 zip 压缩包方式上传 agent
	 * @param testScriptInfo 测试脚本信息，存放 产品 ID、版本 ID、脚本 ID
	 * @param scriptData 测试脚本 zip 包
	 * @throws IOException
	 */
	public void uploadTestScript(TestScriptInfo testScriptInfo, DataHandler scriptData) throws IOException;

	/**
	 * 运行测试用例<br>
	 * 测试用例的自然语言存放在 testCaseStr 中
	 * @param runConf 运行时配置，例如：被测网站的url、浏览器类型等等
	 * @param testCaseInfo 测试用例信息
	 * @param testCaseStr 测试用例内容字符串
	 */
	public void runTestCase(RunConf runConf, TestCaseInfo testCaseInfo, String testCaseStr);

}
